Futures and Promises in Alice ML

ثبت نشده
چکیده

Various languages have tried to allow useful tools and solutions to concurrent programming, Alice ML is one of these. Alice ML uses futures and promises to help solve the problem of data synchronisa-tion and concurrency. This report explains how these features work, displays a detailed example, performs comparisons to other language solutions and presents related work in this area.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

On Proving the Equivalence of Concurrency Primitives

Various concurrency primitives have been added to sequential programming languages, in order to turn them concurrent. Prominent examples are concurrent buffers for Haskell, channels in Concurrent ML, joins in JoCaml, and handled futures in Alice ML. Even though one might conjecture that all these primitives provide the same expressiveness, proving this equivalence is an open challenge in the ar...

متن کامل

Observational Semantics for a Concurrent Lambda Calculus with Reference Cells and Futures

We present an observational semantics for λ(fut), a concurrent λ-calculus with reference cells and futures. The calculus λ(fut) models the operational semantics of the concurrent higher-order programming language Alice ML. Our result is a powerful notion of equivalence that is the coarsest nontrivial congruence distinguishing observably different processes. It justifies a maximal set of correct...

متن کامل

Program Equivalence for a Concurrent Lambda Calculus with Futures

Reasoning about the correctness of program transformations requires a notion of program equivalence. We present an observational semantics for the concurrent lambda calculus with futures λ(fut), which formalizes the operational semantics of the programming language Alice ML. We show that natural program optimizations, as well as partial evaluation with respect to deterministic rules, are correc...

متن کامل

On Correctness of Buffer Implementations in a Concurrent Lambda Calculus with Futures

Motivated by the question of correctness of a specific implementation of concurrent buffers in the lambda calculus with futures underlying Alice ML, we prove that concurrent buffers and handled futures can correctly encode each other. Correctness means that our encodings preserve and reflect the observations of mayand must-convergence, and as a consequence also yields soundness of the encodings...

متن کامل

A Concurrent Lambda Calculus with Futures

We introdu e a new on urrent lambda al ulus with futures, (fut), to model the operational semanti s of onurrent extensions of ML. (fut) an safely express a variety of high-level on urren y onstru ts, in luding hannels, semaphores, or ports. Safe implementations of these onstru ts in (fut) annot be orrupted in any well-typed ontext. We prove safety on basis of a linear type system.

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2008